Data logging

ABSTRACT

A logging system  2  is described in which an input signal value is compare by a signal processor  12  to a trigger-band  34  and an inner-band  36  centre about a previously logged value  34  and changing at a previously determined rate of change. When the trigger-band is exceeded at point  40 , intermediate points are logged representing the maximum and minimum points since the last logged point and the point at which the inner-band was left. The intermediate points enable a more accurate subsequent reconstruction of the actual signal to be made from the logged values.

BACKGROUND OF THE INVENTION

1. Field of the Invention

This invention relates to data logging. More particularly, thisinvention relates to data logging systems that store the logged data ona storage medium using data compression by logging a sequence of datavalues and the times for which they subsist.

2. Description of the Prior Art

It is known from U.S. Pat. No. 4,616,320 to provide a seismic activitylogging system in which seismic data is recorded in compressed form intoa long term memory comprising an integrated circuit memory. The seismicdata is continuously recorded into a buffer memory. If the seismicsignals exceed a preset level then the contents of the buffer and anyfurther signals are stored in the long term memory until the seismicsignal falls below a preset level for a preset period. The data isstored in compressed form by recording a signal value and a rate ofchange value starting from the signal value together with a time forwhich the actual signal remains within a preset tolerance of the valuethat would be predicted by extrapolating from the signal value with therate of change value. When the tolerance is exceeded, a new point isrecorded. This is analogous to runlength coding.

A problem within the data logging field in general and the abovedescribed system is that as the degree of compression increases there isan increase in the loss of detail within the data recorded.

SUMMARY OF THE INVENTION

Viewed from one aspect the invention provides apparatus for logging to astorage medium input signal values as a sequence of logged values andrespective time periods for which said logged values subsist, saidapparatus comprising:

(i) a trigger-band comparitor for comparing an input signal value with atrigger-band of signal values to determine whether said input signalvalue is within said trigger-band following a preceding logged value;and

(ii) signal processing logic coupled to said trigger-band comparitor andresponsive to said input signal value being outside of said trigger-bandto trigger logging of a new logged value with a new time period andsetting of a new value for said trigger-band, wherein:

(iii) said signal processing logic detects from said input signal valuebetween said preceding logged value and said new logged value one ormore intermediate points having predetermined characteristics; and

(iv) said signal processing logic additionally logs said intermediatepoints.

The invention recognises that detail may be preserved without undulydecreasing the compression by seeking to detect one or more intermediatepoints having predetermined significant characteristics and loggingthese points.

One example of such a significant characteristic is the point at whichthe signal was last within an inner-band that is narrower than thetrigger-band.

This invention recognises that when gradual changes occur with a signalvalue, then a loss of detail is not usually significant. Conversely,when a rapid change occurs in a signal value, it is often desirable tostore more detailed data representing the change in the signal value as,for example, sudden changes may be the result of faults or unusualconditions which a user will later wish to study in detail This featureexploits this recognition by logging the last point at which the signalwas within an inner-band. When a rapid change occurs, extra detail isstored in that the exit point of the inner band tolerance is logged aswell as the point at which the trigger band tolerance is exceeded. Thisadditional intermediate point that is logged allows the sharp change inthe input signal value to be reconstructed when the data is lateranalysed (the sharp comer win a signal trace of the data value is keptby logging this additional point).

Other intermediate points that may be logged are the maximum and/orminimum input signal points that preceded the trigger-band beingexceeded. This extra detail allows a better reconstruction of the signalto be later made from the compressed logged data.

It will be appreciated that the data may be stored in many differentrepresentations. For example, it would be possible to use a differentialcoding technique in which changes in signal level were recorded ratherthan absolute values. However, it has been found advantageous to useembodiments in which said logged value includes an initial signal levelvalue of said input signal value. Logging an absolute value in this wayallows increased resistance to data corruption and/or data loss in thatthe input signal values can be reconstructed even if a break occurswithin the logged data stream

It would be possible to use a compression technique that assumed thatthe input signal values remained constant other than at the points atwhich changes within them were logged. However, improved datacompression and a better representation of the actual signal values maybe recorded in embodiments in which said logged value includes a rate ofchange value of said input signal value. In such embodiments theassumption is that the signal value is changing at a uniform rate andthat only significant deviations from what would be expected arerecorded (or the maximum time period of validity for a logged samplevalue within the data format is exceeded). This has been found to givesuperior data compression and more accurate reconstruction of real lifesignals.

When the data compression model includes a rate of change value, thenthe period of validity of the logged values can be increased and so datacompression efficiency increased in embodiments in which said triggerband and said inner band are updated to change in accordance with saidrate of change value. In this way, the tolerance bands applied totriggering the recording of new data are extrapolated in the same way asthe stored data value.

The construction of the system is simplified in embodiments in whichsaid input signal value is sampled at a predetermined rate.

In order to enable the system to be adapted to different situations itis desirable that the predetermined rate is a user set parameter.

When a fixed sampling rate is used, then the time period logged can beexpressed as a number of sample periods. The periodic insertion of atime stamp giving an absolute time value is also useful forreconstruction from the data.

The values logged each time the trigger band tolerance is exceeded couldbe values representing the signal that had just passed, values giving atleast a partial prediction of the signal to come or a mixture of both.However, in preferred emubodiments of the invention said new loggedvalue and said new time period represent said input signal value thatsubsisted from a time corresponding to an immediately preceding loggedpoint to a time corresponding to logging of said new logged value andnew time period.

At the time at which the trigger band tolerance is exceeded, the signalvalue that previously subsisted (comprising a level and a rate ofchange) together with the number of sampling periods for which thatvalue was valid is determined and so can be logged as one self-containeddata unit.

It will be appreciated that it is possible that the inner band could bedisposed asymmetrically win the wide band, but in most real lifephysical situations the best performance is achieved when said innerband is centrally located within said wide band.

In order to facilitate the setting up of the logging system by a user,it is preferred that said inner band has a width that is user set as apercentage of the width of said trigger band.

Various different storage media could be used, such as a solid stateintegrated circuit memory module (e.g. RAM) or a magnetic tape. However,in preferred embodiments of the invention the storage medium is acomputer readable medium Using such a medium (e.g. a computer diskette,ZIP drive, removable hard drive, DAT tape etc) allows the loggedinformation to be readily analysed by a standard PC that already has amechanism for reading such a median.

The apparatus may also be formed as a computer linked via atelecommunications link to a sensor. Ie remote computer then performsthe role of the signal processor and competitors on the received data.

In a similar way as the inner-band has a width that is set as apercentage, the trigger band may be conveniently set up by a user as apercentage of the input signal value.

Viewed from another aspect the present invention provides a method oflogging to a storage medium input signal values as a sequence of loggedvalues and respective time periods for which said logged values subsist,said method comprising the steps of:

(i) comparing an input signal value with a trigger band of signal valuesto determine whether said input signal value is within saidtrigger-band; and

(ii) in response to said input signal value being outside of saidtrigger-band, triggering logging of a new logged value with a new timeperiod and setting of a new value for said trigger-band, said methodfurther comprising the step of;

(iii) detecting from said input signal value between said precedinglogged value and said new logged value one or more intermediate pointshaving predetermined characteristics; and

(iv) additionally logging said intermediate points.

The above, and other objects, features and advantages of this inventionwill be apparent from the following detailed description of illustrativeembodiments which is to be read in connection with the accompanyingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

An embodiment of the invention will now be described, by way of exampleonly, with reference to the accompanying drawings, in which:

FIG. 1 schematically illustrates a data logging system;

FIG. 2 illustrates a compression technique for use in a data loggingsystem;

FIG. 3 illustrates a trigger-band and an inner-band for use indetermining the points to be logged within a data logging system; and

FIG. 4 is a flow diagram illustrating the operation of the system ofFIG. 1 in determining which points are to be logged.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 1 illustrates a data logging system 2 for logging an input signalvalue 4. A transducer 6 converts the input signal value into anelectrical signal that is supplied to an analog-to-digital converter 8.The output from the analog-to-analog converter 8 is supplied to a signalprocessor 12. The sampling rate of the analog-to-analog converter 8 iscontrolled by a signal processor 12. The signal processor 12 alsoprocesses, compresses and logs the stored digital sample values. Thedata values logged are recorded upon a computer diskette within adiskette drive 14.

The signal processor 12 incorporates a general purpose microprocessoroperating under software control that co-ordinates the activities of theother elements of the data logging system 2. The signal processor alsodrives a display 16 and is responsive to user input keys 18. The display16 can be used to provide a visual indication of the current inputsignal value as well as a trace of its variation over time, warnings,normal and abnormal bands, etc. The user input keys 18 can be used tocall up different displays and to set user defined parameters for theoperation of the signal logging system 2.

The sampling frequency of the analog-to-digital converter 8 may beadjusted using the user input keys 18 and the signal processor 12.

FIG. 2 illustrates the principle of the data compression techniqueapplied to the logged data values. An initial input signal level 20 anda rate of change value 22 are recorded. Associated with these values isa tolerance band 24. The tolerance band moves in accordance with therate of change value 22. The input signal value is periodically sampledat a predetermined sampling frequency (sampling points not shown) untila point is found at which the input signal value exceeds the toleranceband 24. In this example, this occurs at point 26. At point 26, thenumber of sampled periods for which the first input signal level 20 andthe rate of change value 22 validly subsisted is known and this can berecorded together with these first values as a data unit so that in anapproximate reconstruction of the input signal value can be made at alater time. In this embodiment, it has been found desirable to use asingle byte to record the number of time periods for which an initialvalue subsists and accordingly the maximum number of time periods beforea new value is recorded is 256, Le. a new value will be recorded after256 intervals even if the tolerance band has not been exceeded. If morebytes were used to store the time period or a variable number of bytesused, then the time period could have a much greater value.

At point 26, a new initial input signal level value is stored togetherwith a new rate of change value. In this case, it will be clearly seenhow the tolerance band minimum and maximum points increase in accordancewith the rate of change value as time progresses. At point 28, the inputsignal value again falls outside of the tolerance band and so a newpoint is stored (in practice the point before the breach). It will beappreciated that this type of coding is in some ways similar to rimlength coding modified in that the rims can have a constant rate ofchange associated where then The angle between the point where thebreach occurred and the preceding point is used to calculate the newrate of change vale.

The tolerance band 24 may be set as a percentage of the input signallevel The narrower the tolerance band 24 is made, the more frequentlywill the input signal level fill outside the tolerance band and so alarger number of points be stored Whilst this reduces the degree of datacompression, it also increases the resolution of the signal that can bereconstructed from the stored data. The unit may be initially suppliedwith a preset value (e.g. 1.5% of the signal value) that will allow datato be logged without any user setup. User setup can then take placelater when experience has been gained of the type of results that willbe generated.

FIG. 3 illustrates two possible input signal values 30, 32 and how theyproduce different results when trigger-band and inner-band tolerancesare employed together. The trigger-band tolerance 34 and the inner-bandtolerance 36 are initially centred upon a first point 38. Theinner-tolerance band 36 may be user set as a percentage of thetrigger-tolerance band 34.

The signal 32 gradually increases until it exits the trigger-toleranceband 34 at point 40. At this point, the point 42 at which the inner-bandwas left is logged and if different, the point 40 at which the triggerband was left is also logged. In the case of a rapidly changing signal30 this captures the “corner” of the signal change.

As a rolling process, the signal processor 12 also stores an indicationof the position and value of the maximum and minimum 43 signal valuesthat have occurred since the last point was logged. The maxi and/or minmpoints are also logged as intermediate points when the trigger-band isleft. Ie signal between point 38 and point 40 is broken down into asequence of segments linking the points via any intermediate points 43.

FIG. 4 is a flow diagram illustrating the operation of the signalprocessor 12 in accordance with the sampling technique discussed in FIG.3. At step 46 the input signal value is sample by the transducer 6 andthe analog-to-digital converter 8. At step 47 any necessary updates aremade to the currently stored points representing the maximum and minimumvalues since the last logged point and the latest point at which theinner band 36 was left. At step 48 a test is made to determine if thelatest sampled value falls outside the trigger-band tolerance. If thistest is negative, then the time period of validity for the previouslystored sample is incremented by one sampling period at step 50 and theprocessing is returned to step 46.

If the result of the test of steep 48 is positive, then the signalprocessor 12 reads the stored intermediate point data and breaks downthe signal sincere the last logged point into segments linking theseintermediate points at step 52. These segments are then logged at step54 before processing returns to step 46.

Although illustrative embodiments of the invention have been describedin detail herein with reference to the accompanying drawings, it is toone understood that the invention is not limited to those preciseembodiments, and that various changes and modifications can be effectedtherein by one skilled in the art without departing from the score andspirit of the invention as defined by the appended claims.

We claim:
 1. Apparatus for logging to a storage medium input signalvalues as a sequence of logged values and respective time periods forwhich said logged values subsist, said apparatus comprising: (i) atrigger-band comparitor for comparing an input signal value with atrigger-band of signal values to determine whether said input signalvalue is within said trigger-band following a preceding logged value;and (ii) signal processing logic coupled to said trigger-band comparitorand responsive to said input signal value being outside of saidtrigger-band to trigger logging of a new logged value with a new timeperiod and setting of a new value for said trigger-band, said signalprocessing logic including an inner-band comparitor for comparing saidinput signal value with an inner-band of signal value to determinewhether said signal value is within said inner band, wherein: (iii) saidsignal processing logic detects from said input signal value betweensaid preceding logged value and said new logged value one or moreintermediate points having predetermined characteristics and detectsthat most recent point at which said input signal value was within saidinner-band preceding said new logged value and logs said point as one ofsaid intermediate points; and (iv) said signal processing logicadditionally logs said intermediate points.
 2. Apparatus as claimed inclaim 1, wherein said signal processing logic detects a minimum signalvalue point between said preceding logged value and said new loggedvalue and logs said point as one of said intermediate points. 3.Apparatus as claimed in claim 1, wherein said signal processing logicdetects a minimum signal value point between said preceding logged valueand said new logged value and logs said point as one of saidintermediate points.
 4. Apparatus as claimed in preceding claim 1,wherein said logged value includes an initial signal level value of saidput signal value.
 5. Apparatus as claimed in claim 1, wherein saidlogged value includes a rate of change value of said input signal value.6. Apparatus as claimed in claim 5, wherein said trigger band is updatedto change in accordance with said rate of change value.
 7. Apparatus forlogging to a storage medium input signal values as a sequence of loggedvalues and respective time periods for which said logged values subsist,said apparatus comprising: (i) a trigger-band comparitor for comparingan input signal value with a trigger-band of signal values to determinewhether said input signal value is within said trigger-band following apreceding logged value; and (ii) signal processing logic coupled to saidtrigger-band comparitor and responsive to said input signal value beingoutside of said trigger-band to trigger logging of a new logged valuewith a new time period and setting of a new value for said trigger-band,wherein: (iii) said signal processing logic detects from said inputsignal value between said preceding logged value and said new loggedvalue one or more intermediate points having predeterminedcharacteristics; and (iv) said signal processing logic additionally logssaid intermediate points, wherein said logged value includes a rate ofchange value of said input signal value, wherein said trigger band isupdated to change in accordance with said rate of change value, saidsignal processing logic includes an inner-band comparitor for comparingsaid input signal value with an inner-band of signal value to determinewhether said signal value is within said inner band; and said signalprocessing logic detects that most recent point at which said inputsignal value was within said inner-band preceding said new logged valueand logs said point as one of said intermediate points; and wherein saidinner-band is updated to change in accordance with said rate of changevalue.
 8. Apparatus as claimed in claim 1, wherein said input signalvalue is sampled at a predetermined rate.
 9. Apparatus as claimed inclaim 8, wherein said predetermined rate is a user set parameter. 10.Apparatus as claimed in claim 4, wherein said time period is stored as anumber of sampling periods for which said logged value subsists. 11.Apparatus as claimed in claim 1, wherein said new logged value and saidnew time period represents said input signal value that subsisted from atime corresponding to an immediately preceding logged point to a timecorresponding to logging of said new logged value and new time period.12. Apparatus for logging to a storage medium input signal values as asequence of logged values and respective time periods for which saidlogged values subsist, said apparatus comprising: (i) a trigger-bandcomparitor for comparing an input signal value with a trigger-band ofsignal values to determine whether said input signal value is withinsaid trigger-band following a preceding logged value; and (ii) signalprocessing logic coupled to said trigger-band comparitor and responsiveto said input signal value being outside of said trigger-band to triggerlogging of a new logged value with a new time period and setting of anew value for said trigger-band, wherein: (iii) said signal processinglogic detects from said input signal value between said preceding loggedvalue and said new logged value one or more intermediate points havingpredetermined characteristics; and (iv) said signal processing logicadditionally logs said intermediate points, wherein said signalprocessing logic detects a maximum signal value point between saidpreceding logged value and said new logged value and logs said point asone of said intermediate points, said signal processing logic includesan inner-band comparitor for comparing said input signal value aninner-band of signal value to determine whether said signal value iswithin said inner band; and said signal processing logic detects thatmost recent point at which said input signal value was within saidinner-band preceding said new logged value and logs said point as one ofsaid intermediate points; and wherein said inner-band is centrallylocated within said trigger-band.
 13. Apparatus for logging to a storagemedium input signal values as a sequence of logged values and respectivetime periods for which said logged values subsist, said apparatuscomprising: (i) a trigger-band comparitor for comparing an input signalvalue with a trigger-band of signal values to determine whether saidinput signal value is within said trigger-band following a precedinglogged value; and (ii) signal processing logic coupled to saidtrigger-band comparitor and responsive to said input signal value beingoutside of said trigger-band to trigger logging of a new logged valuewith a new time period and setting of a new value for said trigger-band,wherein: (iii) said signal processing logic detects from said inputsignal value between said preceding logged value and said new loggedvalue one or more intermediate points having predeterminedcharacteristics; and (iv) said signal processing logic additionally logssaid intermediate points, wherein said signal processing logic detects amaximum signal value point between said preceding logged value and saidnew logged value and logs said point as one of said intermediate points,said signal processing logic includes an inner-band comparitor forcomparing said input signal value with an inner-band of signal value todetermine whether said signal value is within said inner band; saidsignal processing logic detects that most recent point at which saidinput signal value was within said inner-band preceding said new loggedvalue and logs said point as one of said intermediate points; andwherein said inner-band has a width that is user set as a percentage ofthe width of said trigger-band.
 14. Apparatus as claimed in claim 1,wherein said storage medium is a computer readable medium.
 15. Apparatusas claimed in claim 1, wherein the width of said trigger-band is userset as a percentage of said input signal value.
 16. A method of loggingto a storage medium input signal values as a sequence of logged valuesand respective time periods for which said logged values subsist, saidmethod comprising the steps of: (i) comparing an input signal value witha trigger band of signal values to determine whether said input signalvalue is within said trigger-band; and (ii) in response to said inputsignal value being outside of said trigger-band, triggering logging of anew logged value with a new time period and setting of a new value forsaid trigger-band including the step of comparing said input signalvalue with an inner band of signal value to determine whether saidsignal value is within said inner band, (iii) detecting from said inputsignal value between said preceding logged value and said new loggedvalue one or more intermediate points having predeterminedcharacteristics and detecting the most recent point at which said inputsignal value was within said inner-band preceding said new logged valueand, if so, logging said most recent point as one of said intermediatepoints; and (iv) additionally logging said intermediate points.